package org.wdcode.back.action.system;

import org.wdcode.back.constants.BackConstants;
import org.wdcode.back.helper.CacheHelper;
import org.wdcode.back.helper.OperateHelper;
import org.wdcode.back.params.WdBackParams;
import org.wdcode.base.struts.action.BaseAction;

/**
 * 系统属性Action
 * @author WD
 * @since JDK6
 * @version 1.0 2010-02-10
 */
public final class SystemAction extends BaseAction {
	// 序列化 ID
	private static final long	serialVersionUID	= 2024752166135144248L;

	// 模版名
	private String				templsName;

	/**
	 * 重置缓存
	 * @return 跳转
	 * @throws Exception
	 */
	public String cache() throws Exception {
		// 重载全部缓存
		CacheHelper.load();
		// 返回到成功页
		return addMessage(SUCCESS);
	}

	/**
	 * 修改模版
	 * @return 跳转
	 * @throws Exception
	 */
	public String templs() throws Exception {
		// 替换内存的模版名
		getServletContext().setAttribute(BackConstants.THEME_BACK, templsName);
		// 设置到参数中
		WdBackParams.setThemeBack(templsName);
		// 写配置文件
		WdBackParams.write();
		// 返回成功
		return SUCCESS;
	}

	/**
	 * 获得模版名
	 * @return 模版名
	 */
	public String getTemplsName() {
		return templsName;
	}

	/**
	 * 设置模版名
	 * @param templsName 模版名
	 */
	public void setTemplsName(String templsName) {
		this.templsName = templsName;
	}

	/**
	 * 判断是否有权限
	 * @param url 提交路径
	 * @return 是否有权限
	 */
	public boolean isRights(String url) {
		return OperateHelper.getHelper().isRights(url);
	}
}
